package fun.ticsmyc.math;

/**
 * @author Ticsmyc
 * @date 2021-05-28 10:09
 */
public class 二进制问题 {

    /**
     * 477. 汉明距离总和
     * 二进制问题+数组， 逐位处理 降低复杂度
     */
    public int totalHammingDistance(int[] nums) {
        int ans =0;
        for(int i=0;i<32;++i){
            int oneCount =0;
            for(int num :nums){
                oneCount += ((num>>i)&1);
            }
            int zeroCount = nums.length-oneCount;
            ans += oneCount * zeroCount;
        }
        return ans;
    }

}
